package org.jeecg.modules.manage.entity;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: 服务公司（税源地）
 * @Author: yfkj
 * @Date:   2023-03-01
 * @Version: V1.0
 */
@Data
@TableName("caishui_service_company")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="caishui_service_company对象", description="服务公司（税源地）")
public class CaishuiServiceCompany implements Serializable {
    private static final long serialVersionUID = 1L;


	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;

	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;

	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private Date createTime;

	/**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;

	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private Date updateTime;

	/**所属部门*/
    @ApiModelProperty(value = "所属部门")
    private String sysOrgCode;

    /**租户ID*/
    @ApiModelProperty(value = "租户ID")
    private Long tenantId;

	/**税源地名称*/
	@Excel(name = "税源地名称", width = 15)
    @ApiModelProperty(value = "税源地名称")
    private String name;

	/**营业执照编号（税号）*/
	@Excel(name = "营业执照编号（税号）", width = 15)
    @ApiModelProperty(value = "营业执照编号（税号）")
    private String businessLicenseNo;

	/**营业执照照片*/
	@Excel(name = "营业执照照片", width = 15)
    @ApiModelProperty(value = "营业执照照片")
    private String businessLicensePhoto;

	/**法人姓名*/
	@Excel(name = "法人姓名", width = 15)
    @ApiModelProperty(value = "法人姓名")
    private String legalName;

	/**法人身份证号码*/
	@Excel(name = "法人身份证号码", width = 15)
    @ApiModelProperty(value = "法人身份证号码")
    private String legalCard;

	/**法人身份证正面照*/
	@Excel(name = "法人身份证正面照", width = 15)
    @ApiModelProperty(value = "法人身份证正面照")
    private String legalSfzZm;

	/**法人身份证反面*/
	@Excel(name = "法人身份证反面", width = 15)
    @ApiModelProperty(value = "法人身份证反面")
    private String legalSfzFm;

	/**联系人姓名*/
	@Excel(name = "联系人姓名", width = 15)
    @ApiModelProperty(value = "联系人姓名")
    private String contactName;

	/**联系人电话*/
	@Excel(name = "联系人电话", width = 15)
    @ApiModelProperty(value = "联系人电话")
    private String contactPhone;

	/**联系人邮箱*/
	@Excel(name = "联系人邮箱", width = 15)
    @ApiModelProperty(value = "联系人邮箱")
    private String contactEmail;

	/**开户行*/
	@Excel(name = "开户行", width = 15)
    @ApiModelProperty(value = "开户行")
    private String bankName;

	/**开户名*/
	@Excel(name = "开户名", width = 15)
    @ApiModelProperty(value = "开户名")
    private String bankAccount;

	/**开户号*/
	@Excel(name = "开户号", width = 15)
    @ApiModelProperty(value = "开户号")
    private String bankCard;

    /**开户行编码*/
    @Excel(name = "开户行编码", width = 15)
    @ApiModelProperty(value = "开户行编码")
    private String bankCode;

    /**分行名称*/
    @Excel(name = "分行名称", width = 15)
    @ApiModelProperty(value = "分行名称")
    private String branchName;

    /**分行号*/
    @Excel(name = "分行号", width = 15)
    @ApiModelProperty(value = "分行号")
    private String branchCode;

	/**状态：0-禁用，1-正常*/
	@Excel(name = "状态：0-禁用，1-正常", width = 15, dicCode = "disable_status")
	@Dict(dicCode = "disable_status")
    @ApiModelProperty(value = "状态：0-禁用，1-正常")
    private Integer status;

    /**合同文件*/
    @ApiModelProperty(value = "合同文件")
    private String contractFile;

}
